package com.im.partchat.http.api;


import com.im.partchat.bean.Group;
import com.im.partchat.bean.reponsed.BaseResponse;
import com.im.partchat.bean.reponsed.GroupQueryReponse;
import com.im.partchat.bean.request.GroupCreateRequest;
import com.im.partchat.bean.request.GroupDismissRequest;
import com.im.partchat.bean.request.GroupJoinRequest;
import com.im.partchat.bean.request.GroupQueryRequest;
import com.im.partchat.bean.request.GroupQuitRequest;
import com.im.partchat.bean.request.GroupRefreshRequest;
import com.im.partchat.bean.request.GroupSyncRequest;
import com.im.partchat.bean.request.RequestBean;

import java.util.List;

import io.reactivex.Observable;
import retrofit2.http.Body;
import retrofit2.http.POST;

/**
 * Created by fzl on 2017/6/27 0027.
 * VersionCode: 1
 * Desc:
 */

public interface GroupApi {



    @POST("logon/rongyun/groupList")
    Observable<BaseResponse<List<Group>>> groupList(@Body RequestBean<GroupSyncRequest> object);

    @POST("logon/rongyun/groupCreate")
    Observable<BaseResponse<String>> groupCreate(@Body RequestBean<GroupCreateRequest> object);

    @POST("logon/rongyun/groupJoin")
    Observable<BaseResponse<String>> groupJoin(@Body RequestBean<GroupJoinRequest> object);

    @POST("logon/rongyun/groupQuit")
    Observable<BaseResponse<String>> groupQuit(@Body RequestBean<GroupQuitRequest> object);

    @POST("logon/rongyun/groupDismiss")
    Observable<BaseResponse<String>> groupDismiss(@Body RequestBean<GroupDismissRequest> object);

    @POST("logon/rongyun/groupRefresh")
    Observable<BaseResponse<String>> groupRefresh(@Body RequestBean<GroupRefreshRequest> object);

    @POST("logon/rongyun/groupQuery")
    Observable<BaseResponse<List<GroupQueryReponse>>> groupQuery(@Body RequestBean<GroupQueryRequest> object);


}
